package com.xfapp.demos.entity;

import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
public class DataStructure {
    private List<Tab> tabs;
    private Map<String, Integer> cellCounts;
    private Map<String, List<String>> cellValues;
    private Map<String, List<List<SummaryItem>>> cellSummaries;

    // Getters and Setters
    public List<Tab> getTabs() {
        return tabs;
    }

    public void setTabs(List<Tab> tabs) {
        this.tabs = tabs;
    }

    public Map<String, Integer> getCellCounts() {
        return cellCounts;
    }

    public void setCellCounts(Map<String, Integer> cellCounts) {
        this.cellCounts = cellCounts;
    }

    public Map<String, List<String>> getCellValues() {
        return cellValues;
    }

    public void setCellValues(Map<String, List<String>> cellValues) {
        this.cellValues = cellValues;
    }

    public Map<String, List<List<SummaryItem>>> getCellSummaries() {
        return cellSummaries;
    }

    public void setCellSummaries(Map<String, List<List<SummaryItem>>> cellSummaries) {
        this.cellSummaries = cellSummaries;
    }

    // Tab 类
    public static class Tab {
        private String paneKey;
        private String title;

        public Tab(String s, String name) {
            this.paneKey = s;
            this.title = name;
        }

        // Getters and Setters
        public String getPaneKey() {
            return paneKey;
        }

        public void setPaneKey(String paneKey) {
            this.paneKey = paneKey;
        }

        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }
    }

    // SummaryItem 类
    public static class SummaryItem {
        private String name;
        private String id;

        public SummaryItem(String name,  String id) {
            this.name = name;
            this.id = id;
        }

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        // Getters and Setters
        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }
    }
}
